import {
    getEnv
} from "./env/env";
import product from "./env/product";
import develop from "./env/develop";
import trial from "./env/trial";

const CURRENT_VERSION = "1.0.0"; // 默认当前版本 用于无法正确获取版本时，例如小程序原生开发时指定版本号使用
const CURRENT_BUILD_CODE = 1; // 默认当前版本号 用于无法正确获取版本时，例如小程序原生开发时指定版本号使用

let env;
// #ifdef MP
env = getEnv("envVersion"); // 获取环境
// #endif
// #ifndef MP
env = getEnv("withoutMP");
// #endif
let config;
let envStr;
if (env == 'develop') {
    config = develop; // 开发环境 -- 微信审核陈年BUG，审核看到的是develop，可能导致审核不通过
    envStr = "Dev";
} else if (env == 'trial') {
    config = trial; // 体验环境
    envStr = "Test";
} else if (env == 'release') {
    config = product; // 生产环境
    envStr = "Prod";
} else {
    throw new Error("config 错误：env 获取错误");
}
let version = uni.getSystemInfoSync().appVersion;
if (!version) {
    version = CURRENT_VERSION;
}
let buildCode = uni.getSystemInfoSync().appVersionCode;
if (!buildCode) {
    buildCode = CURRENT_BUILD_CODE;
}
let useMock = false;
config = {
    ...config, // 配置参数
    version, // 版本号 小功能调整、BUG修复，提交上线后修改小版本；新功能添加，提交上线后修改中版本；大变动，提交上线后修改大版本
    buildCode, // 构建号 同一版本，上线前，每次调整提交后修改构建号
    env: envStr, // 环境名称 
    needRefreshStorageVersion: "1.0.0", // 需要刷新缓存的最低版本号，null 为当前版本
    needRefreshStorageBuildCode: 1, // 需要刷新缓存的最低构建号， null 为任意构建号
    useMock, // 使用mock数据
}

export default config;